namespace SageKing.Studio.Models;

/// <summary>
/// Represents an input value for an activity.
/// </summary>
public class WrappedInput
{
    /// <summary>
    /// Gets or sets the type of this input.
    /// </summary>
    public string TypeName { get; set; } = default!;
    
    /// <summary>
    /// Gets or sets the expression of this input.
    /// </summary>
    public ExpressionJson Expression { get; set; } = default!;

    /// <summary>
    /// Gets or sets the memory reference of this input.
    /// </summary>
    public MemoryReference MemoryReference { get; set; } = default!;
}

/// <summary>
/// Represents a reference to a memory block.
/// </summary>
public class MemoryReference
{
    /// <summary>
    /// Gets or sets the ID of the memory block being referenced.
    /// </summary>
    public string Id { get; set; } = default!;
}